home *** CD-ROM | disk | FTP | other *** search
/ MACD 5 / MACD 5.bin / workbench / libs / intuisup.lha / Intuisup / source.lha / Texts / texts.h < prev   
C/C++ Source or Header  |  1992-03-21  |  4KB  |  95 lines

  1. /* $Revision Header *** Header built automatically - do not edit! ***********
  2.  *
  3.  *    (C) Copyright 1991 by Torsten Jürgeleit
  4.  *
  5.  *    Name .....: texts.h
  6.  *    Created ..: Thursday 19-Dec-91 16:46:58
  7.  *    Revision .: 0
  8.  *
  9.  *    Date        Author                 Comment
  10.  *    =========   ====================   ====================
  11.  *    21-Mar-92   Torsten Jürgeleit      flags for converting numbers
  12.  *    19-Dec-91   Torsten Jürgeleit      Created this file!
  13.  ****************************************************************************
  14.  *
  15.  *    Defines, structures, prototypes and pragmas for text output
  16.  *    functions
  17.  *
  18.  * $Revision Header ********************************************************/
  19.  
  20. #ifndef    ISUP_TEXTS_H
  21. #define    ISUP_TEXTS_H
  22.  
  23.     /* Defines */
  24.  
  25. #define TEXT_DATA_TYPE_TEXT            1
  26. #define TEXT_DATA_TYPE_NUM_UNSIGNED_DEC        2
  27. #define TEXT_DATA_TYPE_NUM_SIGNED_DEC        3
  28. #define TEXT_DATA_TYPE_NUM_HEX            4
  29. #define TEXT_DATA_TYPE_NUM_BIN            5
  30.  
  31. #define MAX_TEXT_DATA_TYPE            TEXT_DATA_TYPE_NUM_BIN
  32.  
  33. #define TEXT_DATA_FLAG_BOLD            (1 << 0)
  34. #define TEXT_DATA_FLAG_ITALIC            (1 << 1)
  35. #define TEXT_DATA_FLAG_UNDERLINED        (1 << 2)
  36. #define TEXT_DATA_FLAG_ABSOLUTE_POS        (1 << 3)    /* absolute text pos given - don't add border offsets */
  37. #define TEXT_DATA_FLAG_CENTER            (1 << 4)    /* center text with in window width */
  38. #define TEXT_DATA_FLAG_PLACE_LEFT        (1 << 5)    /* place text left of given left edge */
  39. #define TEXT_DATA_FLAG_COLOR2            (1 << 6)    /* use 2nd text render pen */
  40. #define TEXT_DATA_FLAG_COMPLEMENT        (1 << 7)    /* use complement of front and back pen */
  41. #define TEXT_DATA_FLAG_BACK_FILL        (1 << 8)    /* use draw mode JAM2 to fill text background with ri_BackPen */
  42. #define TEXT_DATA_FLAG_NO_PRINT            (1 << 9)    /* don't print text - only calc width */
  43. #define TEXT_DATA_FLAG_NUM_IDENTIFIER        (1 << 10)    /* convert number with normal (assmebler style) leading identifier `$' or `%' */
  44. #define TEXT_DATA_FLAG_NUM_C_STYLE        (1 << 11)    /* use C style identifier `0x' for hex numbers */
  45. #define TEXT_DATA_FLAG_NUM_LEADING_ZEROES    (1 << 12)    /* convert number includeing leading zeroes */
  46. #define TEXT_DATA_FLAG_NUM_UPPER_CASE        (1 << 13)    /* use upper case characters for hex number */
  47.  
  48. #define CONVERT_FLAG_IDENTIFIER            (1 << 0)    /* convert number with normal (assmebler style) leading identifier `$' or `%' */
  49. #define CONVERT_FLAG_C_STYLE            (1 << 1)    /* use C style identifier `0x' for hex numbers */
  50. #define CONVERT_FLAG_LEADING_ZEROES        (1 << 2)    /* convert number includeing leading zeroes */
  51. #define CONVERT_FLAG_UPPER_CASE            (1 << 3)    /* use upper case characters for hex number */
  52.  
  53.     /* Defines for internal use only */
  54.  
  55. #define INTERNAL_TEXT_DATA_FLAG_COUNT    (1 << 15)    /* needed for print_count_text() */
  56.  
  57. #define MAX_NUM_BUFFER_SIZE    34
  58. #define MAX_DEC_NUM_DIGITS    10
  59. #define MAX_HEX_NUM_DIGITS    8
  60. #define MAX_BIN_NUM_DIGITS    32
  61.  
  62.     /* Structures */
  63.  
  64. struct TextData {
  65.     USHORT    td_Type;
  66.     USHORT    td_Flags;
  67.     SHORT    td_LeftEdge;
  68.     SHORT    td_TopEdge;
  69.     BYTE    *td_Text;
  70.     struct TextAttr  *td_TextAttr;
  71. };
  72.     /* Global prototypes */
  73.  
  74. VOID   display_texts(struct RenderInfo  *ri, struct Window  *win,
  75.              struct TextData  *td, SHORT hoffset, SHORT voffset,
  76.                         BYTE **language_text_array);
  77. USHORT print_text(struct RenderInfo  *ri, struct Window  *win, BYTE *text,
  78.            USHORT left_edge, USHORT top_edge, USHORT type, USHORT flags,
  79.                            struct TextAttr  *text_attr);
  80. USHORT convert_unsigned_dec(ULONG num, BYTE *buffer, USHORT flags);
  81. USHORT convert_signed_dec(LONG num, BYTE *buffer, USHORT flags);
  82. USHORT convert_hex(ULONG num, BYTE *buffer, USHORT flags);
  83. USHORT convert_bin(ULONG num, BYTE *buffer, USHORT flags);
  84.  
  85.     /* Global pragmas (Aztec C v5.2a) */
  86.  
  87. #pragma intfunc(display_texts(a0,a1,a2,d0,d1,a3))
  88. #pragma intfunc(print_text(a0,a1,a2,d0,d1,d2,d3,a3))
  89. #pragma intfunc(convert_unsigned_dec(d0,a0,d1))
  90. #pragma intfunc(convert_signed_dec(d0,a0,d1))
  91. #pragma intfunc(convert_hex(d0,a0,d1))
  92. #pragma intfunc(convert_bin(d0,a0,d1))
  93.  
  94. #endif   /* ISUP_TEXTS_H */
  95.